home *** CD-ROM | disk | FTP | other *** search
-
- FreeTCP
- =======
-
- Assembled from bits 'n pieces by Jacco de Leeuw (leeuw@fwi.uva.nl)
-
- Introduction
- ============
-
- With the contents of this archive file, you can use the Internet Access Kit
- included with regular Warp (Red box and Blue box) on your Local Area Network,
- e.g. Ethernet. Normally, the IAK can only be used on a serial dial up line
- with the SLIP or PPP protocol.
-
- You won't have to buy extra networking software such as Warp Connect or
- Lantastic. Although these packages are not bad at all, you may not want to
- spend more money. And perhaps you don't even need the full functionality
- of these products (such as Peer-to-Peer connectivity and TCP/IP server
- daemons, so that people can logon to your PC running TELNETD etc.).
- The solution contained in this archive works great for people on a budget,
- such as students with Ethernet in their dorms.
-
- What we want to do is pass TCP/IP packets to the network driver instead of
- the serial port. On the Web, http://pclt.cis.yale.edu/pclt/winworld/os2.htm
- gives a graphical display of it. Warp needs a couple of files to make this
- happen. Some of these files -- buried in several ZIP and Self Extracting
- archives -- can be found on Microsofts' FTP server (of all places!), others
- are up on Hobbes. In this archive you'll find the most relevant files so you
- won't have to go through the hassle of downloading, extracting, installing
- and deleting a couple of megabytes.
-
- One other file that is needed is IFNDIS.SYS (about 32 Kb). It is not
- included but can be found in the archive TCP20C4.EXE or TCP20C4.ZIP.
- See README.1ST about the controversy around this file.
-
- If you prefer to download the whole lot yourself, here are the locations:
-
- Microsoft LAN Manager 2.2c Client for OS/2:
- ftp://ftp.microsoft.com/BusSys/Clients/LANMAN.OS2/
-
- IBM TCP/IP 2.0 for OS/2 CSD:
- ftp://ftp.cdrom.com/pub/os2/ibm/tcpip/tcp20*
- ftp://ftp.cdrom.com/pub/os2/network/tcpip/tcp20*
- ftp://software.watson.ibm.com/pub/tcpip/os2/tcp20*
- ftp://hobbes.nmsu.edu/os2/ibm/tcpip/tcp20*
- ftp://hobbes.nmsu.edu/os2/network/tcpip/tcp20*
-
- An old Netbind.exe from Microsoft, but it seems to do the trick:
- (this one _was_ on Hobbes but apparently some old stuff has been cleaned
- up. You can still find it with Archie on some other sites.)
- ftp://infoserv.cc.uni-augsburg.de/pub/msdos/tcpip/driver/zip/ndis.zip
- ftp://ftp.latrobe.edu.au/archive-disk2/os2/16bit/network/ndis/ndis.zip
-
-
- Documentation
- =============
-
- I've included some background information on the IAK, TCP/IP etc. in
- \FREETCP\DOCS. Not everything is relevant. Most of this stuff is even quite
- advanced. Just skip the hard bits. Some great stuff on Warp networking (Post-
- script format) can be found at
- ftp://ftp.cdrom.com/pub/os2/warp/info/warpslip.zip and on the Web at
- PC Lube & Tune, http://pclt.cis.yale.edu/pclt/winworld/os2.htm
- This is great technical stuff, also very informative when you are
- configuring your setup. Recommended.
-
- Installation
- ============
-
- First, let me describe briefly what you'll have to do:
-
- 1. Get the CSD and extract the file IFNDIS.SYS from it to \FREETCP\BIN
- 2. Get an NDIS driver for your network card and put it in \FREETCP\BIN
- 3. Configure the interrupt, DMA, I/O address etc. for your network card
- in \FREETCP\BIN\PROTCOL.INI
- 4. Add \FREETCP\CONFIG.ADD to your \CONFIG.SYS and edit it
- 5. Edit \FREETCP\BIN\LANSTART.CMD
- 6. Make a shadow of LANSTART.CMD in your startup folder
- 7. Reboot (and goto step 3 if anything goes wrong *GRIN*)
- 8. Make an entry in the Dialer ('Dial Other Providers')
- 9. "Dial" your entry so that the correct configuration files will be set up
- 10. Configure your TCP/IP applications such as Ultimail/2 "Lite" (or replace
- them with better ones :-)
- 11. Start using TCP/IP apps.
-
- If you are setting up this stuff for the first time, I suggest you skip
- steps 6, 8..11 and put a REM before the line RUN=NETBIND.EXE in your
- CONFIG.SYS. This allows you to open an OS/2 window and execute
- NETBIND.EXE and LANSTART.CMD manually. This way, should something go
- wrong, there's more chance you will see an error message. If you get
- no errors, you can continue with the steps you skipped.
-
- 1. Get the CSD and extract files
- --------------------------------
-
- First, you'll have to get the IBM TCP/IP 2.0 CSD. Actually, you only
- need "disk" #4 of the CSD. The latest CSD is on IBM's own FTP site:
- ftp://software.watson.ibm.com/pub/tcpip/os2/tcp20c4.exe
- but you'll probably want to get it from another FTP site :-), e.g.
- ftp://hobbes.nmsu.edu/os2/ibm/tcpip/tcp20c4.exe
-
- Next, you'll have to extract the only file needed, IFNDIS.SYS.
- I've made a command file, EXTRACT.CMD located in \FREETCP\BIN, which should
- do the trick for you (Info-Zip's UNZIP.EXE needs to be in your path). If you
- want, you can extract IFNDIS.SYS on your Unix host and then download it so
- that you won't have to download the whole 1.1 Mb. EXTRACT.CMD needs one
- parameter, the (path and) filename of the CSD file containing IFNDIS.SYS.
- For instance, if you have the March '95 Hobbes CD on F:, goto the directory
- \FREETCP\BIN and execute EXTRACT F:\NETWORK\TCPIP\TCP20C4.EXE. This will put
- IFNDIS.SYS in the desired directory. (If you got the CSD from a BBS, then
- there's a chance the file will be called TCP20C4.ZIP. You can use EXTRACT2.CMD
- in that case. I've received a free CD from IBM with files from the Hotline BBS
- Switzerland, which had the CSD in zip format as well).
-
- As you can read in \FREETCP\DOCS\WARPTCP.TXT, the INET.SYS included
- with the IAK of Warp will "break the full client/server functionality
- of Ultimail/2". I'm not sure but I think they mean Ultimail/2 as shipped
- with IBM TCP/IP 2.0, not Ultimail/2 "Lite" as shipped with the IAK. So
- I guess if you intend to use only the TCP/IP applications shipped with the
- IAK, the INET.SYS from Warp may be good enough. Anyway, there is a new
- INET.SYS included with the latest PPP/Dialer kit (just use "Retrieve Software
- Updates"), which may or may not solve the problem. Oh, and there's an INET.SYS
- in the CSD as well...
-
- 2. Get an NDIS driver
- ---------------------
-
- You'll need an OS/2 NDIS driver for your network card. You can use the one
- which was supplied with your card (if you're lucky) or else look for one
- in ftp://ftp.cdrom.com/pub/os2/network/ndis/,
- ftp://hobbes.nmsu.edu/os2/network/ndis/ or elsewhere. I'm not sure if it has
- to be a 32-bit driver. Several people have reported crashes with their (old),
- vendor supplied, driver for NE2000 compatibles. The Warp IAK is
- 32-bit, I'm not sure about the LAN Manager files. If your NDIS driver
- crashes, TRAPs etc., try to get a later version.
-
- For your convenience, I decided to include a driver for NE2000 compatibles
- in this archive because NE2000 clones are inexpensive and very common
- among home users, students, etc. Since OS/2 drivers for NE2000 clones
- are often buggy and several people have reported success with this particular
- driver, I thought I'd add it to this archive. So you won't have to
- waste time struggling with your own driver and looking for a better one...
- There seems to be a new NE2000 compatible driver on Hobbes,
- ftp://hobbes.nmsu.edu/os2/drivers/ne2000wc.zip which is for Warp Connect.
- Get this file if you run into troubles with the included NE2000 driver. It
- contains elaborate instructions on how to solve them.
-
- DON'T use the NE2000 driver included in the Microsoft LAN Manager archive
- (MS2000$) since it crashes Warp real hard! (What else would you expect,
- eh? :-). There are known problem with MS LAN Manager and some network cards
- (mainly Token Ring). For a list, see
- ftp://ftp.cdrom.com/pub/os2/network/ndis/lmos22.zip
-
- If you only have a Novell ODI driver for your network card, you need
- ODINSUP, the ODI-to-NDIS "shim". There's an old version up on
- ftp://ftp.jussieu.fr/pub6/pc/os2/16bit/network/odinsp.zip but I don't
- know if this one works. The latest version should be included with the
- Netware requester on ftp://ftp.novell.com/pub/netware/nwos/os2clnt211/
- You'll probably still need the LAN Manager stuff since the IAK seems to be
- closely tied to NDIS.
-
- Token Ring network cards should be supported but I have no way of knowing.
- If you get one working, please contact me.
-
- 3. Edit PROTOCOL.INI
- --------------------
-
- You should now edit \FREETCP\BIN\PROTOCOL.INI to reflect the settings
- for your network card.
-
- [TCPIP_XIF]
- DRIVERNAME = TCPIP$
- BINDINGS = "NS2000_NIF"
- ^^^^^^^^^^
- Here you tell LAN Manager to which NDIS driver the TCP/IP stack of Warp
- has to "bind", i.e. forward or receive packets to/from. The included
- PROTCOL.INI is configured to use the NS2000 driver for NE2000 compatibles.
-
- I myself had a 3COM EtherLink III 3C579 at my disposal. I picked up a
- driver from ftp://ftp.cdrom.com/pub/os2/network/ndis/3c5x9.zip. Most
- drivers contain an example PROTOCOL.INI file which you can use as a starting
- point. This file usually contains a description of all the "keywords" for the
- driver, but in many cases the default settings will do. If you wanted to use
- the EtherLink III driver, you would have to change the BINDINGS in the
- TCPIP_XIF section to the name of the 3C509_NIF section. This was all I
- had to do, since the 3COM card was self configuring.
-
- Your network card may be different. If you have an NE2000 clone for example,
- you'll need to specifify the Interrupt and the I/O base address. In the
- PROTOCOL.INI included with this archive, I have set these to IRQ 15 and
- IOBASE 340 in the [NS2000_NIF] section.
-
- 4. Edit CONFIG.SYS
- ------------------
-
- You'll need to edit the CONFIG.SYS on your boot partition. In the following,
- I assume your boot partition is D: and you've put the contents of this
- archive in \FREETCP on D: as well. As a starting point, have a look at
- \FREETCP\CONFIG.ADD. You can copy lines to your own CONFIG.SYS and then edit
- them from there.
-
- First of all, \FREETCP\BIN should be added to both your PATH and DPATH.
- If you add this path _before_ \TCPIP\BIN, the replacement LINKUP.EXE will
- be used (see my remarks below about this LINKUP.EXE). Next, copy everything
- between the LANMAN lines to your CONFIG.SYS and modify them to reflect
- your paths. You might want to REM out the line with the RUN=NETBIND.EXE
- so that you can run it from a command line. This allows you to see error
- messages. Later on, when everything works, you can remove the REM again.
-
- In the CONFIG.ADD example, the INET.SYS from the IAK is loaded. See step 1
- about this.
-
- Next, put in a DEVICE= entry for your OS/2 NDIS driver. In CONFIG.ADD,
- the NS2000 driver is used.
-
- REM out the two lines in your original CONFIG.SYS where INET.SYS
- and IFNDISNL.SYS are being loaded. (Or leave INET.SYS as it is but don't
- copy it from CONFIG.ADD. Just don't load it twice).
-
- Leave the SET TMP= and SET ETC= as they are in your CONFIG.SYS.
- I.e. don't copy them from CONFIG.ADD
-
- I've REMmed out the TCP/IP driver for the DOS boxes, as you can see in
- CONFIG.ADD. This is my own personal preference. I don't need TCP/IP access
- in DOS and Windows sessions. This saves some memory. If you need this
- feature you can leave them in your own CONFIG.SYS as they are. You should
- not REM out CNTRL.EXE, it has nothing to do with DOS drivers.
- See http://pclt.cis.yale.edu/pclt/winworld/os2logic.htm for what it does.
-
- 5. Edit LANSTART.CMD
- --------------------
-
- You'll need to tell the TCP/IP stack a couple of things about the
- configuration for your network card. Most of this information should come
- from your system administrator. Some of this info has to go in
- \FREETCP\BIN\LANSTART.CMD. First, you need a (numerical) IP address for your
- machine. It is a no-no to just "make one up" if you want to connect to the
- big Internet. You should contact your network administrator for a valid IP
- address in order to play it by the book. If he/she isn't cooperating (or you
- don't have one :-) perhaps you could use some reserved private network
- IP address such as 192.168.20.20 or so (see RFC1597). You need to know your
- subnet mask as well. In most cases your subnet will be 255.255.255.0
- Now put these two IP numbers in LANSTART.CMD, on the ifconfig line.
- (If your company/university/etc. uses Unix BOOTP servers you could try to
- change the two IFCONFIG and ROUTE lines to BOOTP.EXE).
-
- Next, you must get hold of the gateway's IP address which you are going to
- use. Put this IP address in LANSTART.CMD, on the route add line. The last
- parameter (the 1) is the hop count. Change it only if you know what you're
- doing. If your network is not really going to be connected to the Internet
- (you just want to use FreeTCP to link two PCs, in a crude manner), you might
- not need a route add command but I'm not sure.
-
- 6. Run LANSTART.CMD at startup
- ------------------------------
-
- You can do this by dragging a shadow of LANSTART.CMD to your startup folder.
- Or you could copy LANSTART.CMD to the root of your boot partition and rename
- it to STARTUP.CMD. I suggest to do this after you have figured everything
- out. The first time you should run LANSTART.CMD from a command line so that
- you can see the error messages.
-
- 7. Reboot
- ---------
-
- Watch any errors you get. You might want to boot with ALT-F2 pressed so that
- you see the drivers being loaded and then run NETBIND.EXE and LANSTART.CMD
- manually.
-
- 8. Add Entry in Dialer
- ----------------------
-
- Since TCP/IP originates from Unix, the IAK uses all kinds of obscure
- Unix-like configuration files. I prefer to use the Dialer since it does most
- of the work for you. Just "Add an entry" with the relevant information. You
- can skip (or enter whatever you want) the fields which have to do with modems
- (such as phone number, login sequence, MTU size, etc.)
-
- The Domain Name server is important and so is your Domain Name. You can make
- up "Your Host Name" yourself, if your network administrator didn't do that
- already.
-
- I'm not going to explain how to fill in all this information, because that
- has been done better elsewhere (press F1 in the Dialer or look on
- PC Lube & Tune's Web site).
-
- 9. "Dial" entry
- ---------------
-
- Start the Dialer and Dial your LAN entry. Of course, you won't get far but
- at least the configuration files will be set up. There's one thing I noticed:
- I had to copy \TCPIP\ETC\RESOLV to a backup file while the Dialer was
- "dialing", then I "hung up" and had to copy back this backup file to
- \TCPIP\ETC\RESOLV. Somehow the Dialer had deleted it, which resulted in
- "Cannot resolve name" errors.
-
- 10. Configure TCP/IP apps
- -------------------------
-
- ...as you would normally do for a dial-up link. The Dialer does not set up
- all information for the applications. Especially Ultimail/2 needs a lot more
- configuring.
-
- 11. Get on the net!
- -------------------
-
- If you got this far, don't you sit there waiting! Try it out! For example,
- you can use "Retrieve Software Updates" to download the latest WebExplorer,
- Dialer, etc. Question 5b in \FREETCP\DOCS\WARPTCP.FAQ says that Ultimail/2
- "Lite" is configured for dial-up mail servers. You might want to try other
- mail packages such as PMMail or Netsuite instead. Look with the WebExplorer
- on http://wc62.residence.gatech.edu/sorensen/tcpip.html for some great
- TCP/IP apps.
-
- Notes
- =====
-
- LINKUP.EXE
- ----------
-
- Many TCP/IP apps included with the IAK first open LINKUP.EXE and check
- if there's a open dial-up link. If not, you get the warning "Not Connected
- to the Internet" and you'll have to click "Don't connect" before the actual
- application is loaded. Of course, if you use FreeTCP you'll get this warning
- every time you start a TCP/IP app, which you may find annoying. Well, I did,
- so I decided to make a replacement for \TCPIP\BIN\LINKUP.EXE. This
- replacement program had to run the actual TCP/IP app supplied as a parameter.
- I didn't even have to program one myself because I found exactly what I
- needed in the testsuite for the EMX/GCC combo
- (ftp://ftp.cdrom.com/pub/os2/unix/emx09a/emxtest.zip, file: system.c).
- I just had to compile it. If you want to use this replacement LINKUP.EXE,
- add the path \FREETCP\BIN _before_ \TCPIP\BIN in your CONFIG.SYS. If you
- prefer to add the path at the end of your PATH= line, rename the original
- LINKUP.EXE to something else and copy the replacement to \TCPIP\BIN.
-
- I found out, however, that my LINKUP.EXE only works in combination with
- 4OS/2! I don't know if that is a bug in CMD.EXE. If you insist on using
- OS/2's standard CDM.EXE, some TCP/IP objects will open up correctly with
- my LINKUP.EXE, other won't start at all. In that case you're probably better
- off using the original LINKUP.EXE. But 4OS/2 is such a great piece of software
- that you won't regret downloading it from
- ftp://ftp.cdrom.com/pub/os2/textutil/4os2pkg.zip
-
- LAN *and* serial access
- -----------------------
-
- Perhaps you need both LAN access and SLIP/PPP access, but not the same
- time. It might be possible to do that using seperate entries in the Dialer
- but I'm not sure. Things will be extra complicated if you have different
- accounts with different email addresses, news servers, etc. You'll be on
- your own on that, sorry. If you get it to work, I'd like to hear.
-
- It's probably possible to get both LAN access and SLIP/PPP access
- running at the same time with FreeTCP. Suppose you're in a dorm and you
- and your roommate are connected through Ethernet. Both of you want to
- use one phone line and one modem. Then read questions 5c and 5d in
- WARPTCP.FAQ. They are talking about a "TCP/IP Configuration Notebook",
- but since you don't have one (I told you before to buy Warp Connect if you want
- that luxury :-), you might need to edit the files \TCPIP\ETC\RESOLV and
- \TCP\ETC\HOSTS. Next, read WARPTCP2.TXT, ROUTEOS2.TXT OS2SLIP.TXT. These
- contain some information on how to set up the different configuration
- files for the routing to your own little network. You might need to run
- ROUTED.EXE on the machine with the modem but perhaps static routing will
- work as well. I'm not sure about this (see ROUTEOS2.TXT). Anyway, ROUTED.EXE
- is not included with the IAK so you'll need the CSD for that. Also note that
- you might need to run IPGATE ON, on the PC which has the modem and
- has to forward (route) the packets. Scott Cooper (scooper@nando.net)
- writes about this:
-
- > When running Warp connect and TCP/IP on through both LAN and
- > SLIP/PP connections, IPGATE is turned off automatically by the
- > Connect code. If memory serves, this is done by the dialer.
- You can get around this by starting the PPP connection from the command
- line, Get this by using pppfake from hobbes.
-
- Free TIA replacement
- --------------------
-
- I've got one final tip for you. Many companies, universities, etc. provide
- only command line dial-up accounts. That's fine, but it would be really
- great if you could use all your TCP/IP apps from home, wouldn't it? Well,
- it's possible. There's a commercial program which you start from the command
- line and turns it into a full blown SLIP link: The Internet Adapter
- TIA, ftp://marketplace.com/pub/tia/). It costs $25, no source included.
- However, there is an alternative which is free, based on 4.4BSD, comes with
- complete sources and does SLIP as well as PPP. You can ftp SLiRP from
- ftp://blitzen.canberra.edu.au/pub/slirp/
- There's also a WWW page at http://blitzen.canberra.edu.au/~danjo/, look
- for the pages on how to set it up with the Warp IAK. Or have a look
- at my own homepage, http://carol.fwi.uva.nl/~leeuw/. You can compile the
- sources yourself or pick up the binaries (see the WWW pages, but use them
- on your own risk).
-
- SLiRP comes in extra useful if you want LAN and SLIP/PPP access at the
- same time. ROUTEOS2.TXT says the the administrator of the machine at the
- other end of your SLIP/PPP line (usually a commercial Internet provider or
- your university) has to assign you an IP "subnet" and add a route to your
- network. Usually, they charge you money for this since IP addresses are
- scarce and human intervention is required. With SLiRP, you can do all this
- yourself since SLiRP is based on "fake" IP addresses for your network.
- So you won't have to pay your service provider for extra service. See the
- README in the SLiRP package on how to route the packets from your own
- little LAN to the Internet.
-
- Need more?
- ==========
-
- There's one other thing: there are no "servers" included with the IAK. That
- means, for example, that other people cannot telnet to your machine because
- there is no "telnetd" running. In theory, it is possible to extract the
- daemons (including the ones you need to print over the network to a remote
- printer using the LPR protocol) you need from the CSD. Of course, this is
- illegal. They are quite difficult to set up without docs anyway. Warp Connect
- is much better at this. On the other hand, there are several freeware/
- shareware servers available on Hobbes: ftpd, fingerd, telnetd(?), gopherd,
- talkd, httpd, pop3d, etc. With a little bit of tweaking, you might even get
- "peer to peer"-like functionality with Lynn's Workplace FTP from Hobbes.
- This will integrate your peer's ftpd (ask your roommate to run Linux, WinQVT
- or an OS/2 ftpd such as Neologic or Penguin) on the Desktop. If you find
- an even better solution, I'd like to hear.
-
- Acknowledgements
- ================
-
- Thanks must go to Albert Crosby who made the Mini-FAQ about OS/2
- and "Windows Networking" (OS2NET.TXT), bringing my attention to
- the freely available MS LAN Manager, and Henrik Stroem (WARPTCP.TXT)
- who posted an article on how to combine IBM TCP/IP and the IAK. If you
- combine these two pieces of information (and you manage to find the CSD
- and an old netbind somewhere :-), you come up with an idea like FreeTCP.
-
- I'd also like to thank my "beta testers", who probably wish to remain
- anonymous...
-
- Author
- ======
-
- Well, I didn't actually make anything, I just looked and looked until
- I found the "missing parts". If you want to contact me:
-
- Jacco de Leeuw
- Student at the University of Amsterdam
- Computer Science Department
- J.C. van Wessemstraat 54
- 1501 VM Zaandam
- The Netherlands
- Internet: leeuw@fwi.uva.nl
- WWW Homepage: http://carol.fwi.uva.nl/~leeuw/
- Fidonet: 2:280/130.20